//app.js
const sm3 = require('miniprogram-sm-crypto').sm3
App({
  onLaunch: function () {
    if (!wx.cloud) {
      console.error('请使用 2.2.3 或以上的基础库以使用云能力')
    } else {
      wx.cloud.init({
        // env 参数说明：
        //   env 参数决定接下来小程序发起的云开发调用（wx.cloud.xxx）会默认请求到哪个云环境的资源
        //   此处请填入环境 ID, 环境 ID 可打开云控制台查看
        //   如不填则使用默认环境（第一个创建的环境）
        // env: 'my-env-id',
        traceUser: true,
      })
    }


    this.globalData = {
      oid: '',
      IsSignIn: false,
      userInfo: null
    }
    this.onGetOpenid()
  },

  onGetOpenid: function() {
    // 调用云函数
    var that = this
    wx.cloud.callFunction({
      name: 'login',
      data: {},
      success: res => {
        that.globalData.oid = sm3(res.result.openid)                   // 将openid用sm3算法加密
        wx.request({
          url: 'http://localhost:8000/IsSignIn',
          method: 'POST',
          data:{
            oid: that.globalData.oid
          },
          success(res){
            console.log(res)
            // 如果状态码的第一个数字为2
            if(res.statusCode.toString()[0] === '2'){
              // 这里以实际的res为准
                // that.globalData.IsSignIn = res.data.IsSignIn
            } else {
              wx.showModal({
                title: '提示',
                content: '服务器正在维护，请稍后再试'
              })
            }
          }
        })
      },
      fail: err => {
        console.error('[云函数] [login] 调用失败', err)
        wx.showToast({
          title: '请重新点击按钮！',
        })
      }
    })
  },
})
